export default function compose( ...funs ) { const props = funs.reduceRight( (total, current) => { return {...total, ...current} }, {}) return function( source ) { return function( values ) { return source({ ...values, ...props }) } } }